package cn.codeforfun.gitee.bean.repo.request;

import cn.codeforfun.gitee.bean.GiteeRequest;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 仓库基础对象
 *
 * @author wangbin
 */
@EqualsAndHashCode(callSuper = true)
@JsonIgnoreProperties(ignoreUnknown = true)
@Data
public class GiteeRepoRequest extends GiteeRequest {
    private Integer id;
    /**
     * 仓库名称
     */
    private String name;
    /**
     * 仓库描述
     */
    private String description;
    /**
     * 主页(eg: https://gitee.com)
     */
    private String homepage;
    /**
     * 允许提Issue与否。默认: 允许(true)
     */
    @JsonProperty("has_issues")
    private Boolean hasIssues = true;
    /**
     * 提供Wiki与否。默认: 提供(true)
     */
    @JsonProperty("has_wiki")
    private Boolean hasWiki = true;
    /**
     * 允许用户对仓库进行评论。默认： 允许(true)
     */
    @JsonProperty("can_comment")
    private Boolean canComment = true;
    /**
     * 值为true时则会用README初始化仓库。默认: 不初始化(false)
     */
    @JsonProperty("auto_init")
    private Boolean autoInit = false;
    /**
     * Git Ignore模版
     */
    @JsonProperty("gitignore_template")
    private String gitignoreTemplate;
    /**
     * License模版
     */
    @JsonProperty("license_template")
    private String licenseTemplate;
    /**
     * 仓库路径
     */
    private String path;
    /**
     * 仓库公开或私有。默认: 公开(false)
     */
    @JsonProperty("private")
    private Boolean private1 = false;
}
